/*
 * 判断是否为C语言的合法标识符
 *
 * 题目链接：https://programming.pku.edu.cn/probset/ce201cde75084b56ad4544229996fbf2/aa775db908c04168bc187c1be51d98d9/
 * 作者：lyazj <seeson@pku.edu.cn>
 *
 * 本题所需主要知识点：
 *   - 字符串
 *   - 分支和循环
 */

#include <ctype.h>
#include <stdbool.h>
#include <stdio.h>

// 在编程网格中使用 gets 的方法，可能不适用于其他平台
char *gets(char *);

bool judge(const char *s)
{
  // 对应正则表达式：[_a-zA-Z][_a-zA-Z0-9]*
  if(*s != '_' && !isalpha(*s)) return false;
  while(*++s != 0) {
    if(*s != '_' && !isalnum(*s)) return false;
  }
  return true;
}

int main(void)
{
  int n;
  scanf("%d ", &n);  // "%d " 可以在读取数字后跳过数字后的所有空白，特别是换行符
  while(n--) {
    char s[81];
    printf("%d\n", judge(gets(s)));
  }
  return 0;
}
